package sv.gob.mtps.colectivas.model;

// Generated Dec 29, 2013 5:35:54 PM by Hibernate Tools 3.4.0.CR1

import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * TbEmpleador generated by hbm2java
 */
@Entity
@Table(name = "tb_empleador")
public class TbEmpleador implements java.io.Serializable {

	private Integer idEmpleador;
	private CatActividadEconomica catActividadEconomica;
	private String nombreEmpleador;
	private String direccionEmpleador;
	private String nitEmpleador;
	private String nombrePropietario;
	private String nombreRepresentanteLegal;
	private Set<TbSolicitud> tbSolicituds = new HashSet<TbSolicitud>(0);

	public TbEmpleador() {
	}

	public TbEmpleador(CatActividadEconomica catActividadEconomica) {
		this.catActividadEconomica = catActividadEconomica;
	}

	public TbEmpleador(CatActividadEconomica catActividadEconomica,
			String nombreEmpleador, String direccionEmpleador,
			String nitEmpleador, String nombrePropietario,
			String nombreRepresentanteLegal, Set<TbSolicitud> tbSolicituds) {
		this.catActividadEconomica = catActividadEconomica;
		this.nombreEmpleador = nombreEmpleador;
		this.direccionEmpleador = direccionEmpleador;
		this.nitEmpleador = nitEmpleador;
		this.nombrePropietario = nombrePropietario;
		this.nombreRepresentanteLegal = nombreRepresentanteLegal;
		this.tbSolicituds = tbSolicituds;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "id_empleador", unique = true, nullable = false)
	public Integer getIdEmpleador() {
		return this.idEmpleador;
	}

	public void setIdEmpleador(Integer idEmpleador) {
		this.idEmpleador = idEmpleador;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "actividad_economica", nullable = false)
	public CatActividadEconomica getCatActividadEconomica() {
		return this.catActividadEconomica;
	}

	public void setCatActividadEconomica(
			CatActividadEconomica catActividadEconomica) {
		this.catActividadEconomica = catActividadEconomica;
	}

	@Column(name = "nombre_empleador")
	public String getNombreEmpleador() {
		return this.nombreEmpleador;
	}

	public void setNombreEmpleador(String nombreEmpleador) {
		this.nombreEmpleador = nombreEmpleador;
	}

	@Column(name = "direccion_empleador")
	public String getDireccionEmpleador() {
		return this.direccionEmpleador;
	}

	public void setDireccionEmpleador(String direccionEmpleador) {
		this.direccionEmpleador = direccionEmpleador;
	}

	@Column(name = "nit_empleador")
	public String getNitEmpleador() {
		return this.nitEmpleador;
	}

	public void setNitEmpleador(String nitEmpleador) {
		this.nitEmpleador = nitEmpleador;
	}

	@Column(name = "nombre_propietario")
	public String getNombrePropietario() {
		return this.nombrePropietario;
	}

	public void setNombrePropietario(String nombrePropietario) {
		this.nombrePropietario = nombrePropietario;
	}

	@Column(name = "nombre_representante_legal")
	public String getNombreRepresentanteLegal() {
		return this.nombreRepresentanteLegal;
	}

	public void setNombreRepresentanteLegal(String nombreRepresentanteLegal) {
		this.nombreRepresentanteLegal = nombreRepresentanteLegal;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "tbEmpleador")
	public Set<TbSolicitud> getTbSolicituds() {
		return this.tbSolicituds;
	}

	public void setTbSolicituds(Set<TbSolicitud> tbSolicituds) {
		this.tbSolicituds = tbSolicituds;
	}

}
